package com.skilltrack.enrol.service;



import com.baomidou.mybatisplus.extension.service.IService;

import com.skilltrack.enrol.model.dto.AddCourseDto;
import com.skilltrack.enrol.model.dto.CourseBaseInfoDto;
import com.skilltrack.enrol.model.dto.EditCourseDto;
import com.skilltrack.enrol.model.dto.QueryCourseParamsDto;
import com.skilltrack.enrol.model.po.CourseBase;
import com.skilltrackedu.model.PageParams;
import com.skilltrackedu.model.PageResult;

/**
 * <p>
 * 课程基本信息 服务类
 * </p>
 *
 * @author itcast
 * @since 2025-03-04
 */
public interface CourseBaseInfoService extends IService<CourseBase> {
    /*
     * @description 课程查询接口
     * @param pageParams 分页参数
     * @param queryCourseParamsDto 条件条件
     * @return com.xuecheng.base.model.PageResult<com.xuecheng.content.model.po.CourseBase>  查询结果
     * @author Mr.M
     * @date 2022/9/6 21:44
     */
    PageResult<CourseBase> queryCourseBaseList(PageParams pageParams, QueryCourseParamsDto queryCourseParamsDto);

    /*
     * @description 课程信息修改接口
     * @param companyId 机构id
     * @param addCourseDto 课程信息
     * @return com.xuecheng.content.model.dto.CourseBaseInfoDto 修改后的课程信息
     * @author Mr.M
     * @date 2022/9/6 21:44
     */
    CourseBaseInfoDto createCourseBase(Long companyId , AddCourseDto addCourseDto);


    /*
     * @description 根据课程id查询课程信息
     * @param courseId 课程id
     * @return com.xuecheng.content.model.dto.CourseBaseInfoDto
     * @author Mr.M
     * @date 2022/9/7 9:01
     */
    CourseBaseInfoDto getCourseBaseById(Long courseId);


    /*
     * @description 修改课程信息
     * @param companyId 机构id
     * @param courseBaseInfoDto 课程信息
     * @return com.xuecheng.content.model.dto.CourseBaseInfoDto
     * @author Mr.M
     * @date 2022/9/7 9:01
     */
    CourseBaseInfoDto updateCourseBase(Long companyId, EditCourseDto editCourseDto);

}


